package com.yami.shop.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yami.shop.bean.model.AirdropTask;
import com.yami.shop.bean.model.AirdropTaskConditions;
import com.yami.shop.bean.model.User;
import com.yami.shop.bean.vo.PersonNft;
import com.yami.shop.common.util.PageParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * (TzAirdropTask)表服务接口
 *
 * @author makejava
 * @since 2023-05-22 18:29:21
 */
public interface AirdropTaskService extends IService<AirdropTask> {

    /**
     * 分页获取空投任务信息列表
     *
     * @param page  分页参数
     * @param airdropTask
     * @return 空投任务列表分页数据
     */
    IPage<AirdropTask> page(PageParam<AirdropTask> page, AirdropTask airdropTask);

    /**
     * 获取空投人员信息
     * @param conditions conditions
     * @param articleIds articleIds
     * @param articleType articleType
     * @param shopId shopId
     * @return 空投人员信息
     */
    List<User>  getDropUserInfoList(List<AirdropTaskConditions> conditions,String articleIds,String articleType, Long shopId);

    /**
     * 空投定时任务执行
     */
    void airdropTask(Long airdropTaskId);


}

